package obiecte;

import java.util.ArrayList;

import javax.media.opengl.GL2;
import javax.media.opengl.glu.GLU;

import main.TextureHandler;

import com.jogamp.opengl.util.gl2.GLUT;

import Matematica.Vector3;

public interface SpaceObject 
{       
        public void setParameters(double rot, double dist, SpaceObject oCenter, Vector3 rAxis, double size, String name, Vector3 oAxis, double oTilt, double rTilt, double oSpeed);
        
        public void add(SpaceObject obj);
        
        public void draw(GL2 gl, GLU glu, GLUT glut, ArrayList<TextureHandler> tex);

        public void animate(GL2 gl, GLU glu, GLUT glut);

        public String getName();
        
        public String getParentName();

        public void drawAxis(GL2 gl, GLU glu, GLUT glut);

        public void transform(GL2 gl, GLU glu, GLUT glut);
}
